home *** CD-ROM | disk | FTP | other *** search
- /*
- * Objects-In-C test program
- *
- * based on the test program by John Wainwright © 1988
- * J. Langowski/MacTutor 1989
- */
-
- #include "oic.h"
- #include "generics.h"
-
- enum { TITLE = 1, BOUNDS, KIND };
- extern class Window;
-
- main()
- {
- object rect1;
- object box1, box2;
- register int i;
- extern class Coord, Box, Window, FillRRect;
- object w;
- static Rect bounds = {100, 100, 350, 350};
- GenericTable *gen;
-
- MaxApplZone();
-
- /*
- * initialize OIC.
- */
- InitOIC();
- InitSysClasses();
- InitTestClasses();
- InitNameClasses();
-
- print((box1 = New(Box, 100.0, 100.0, 200.0, 200.0)));
- print((rect1 = New(FillRRect, 50.0, 50.0, 150.0, 150.0, 4.0, 4.0, gray)));
-
- w = New(Window, BOUNDS, &bounds,
- TITLE, "\pMacTutor",
- KIND, (long)rDocProc,
- END);
-
- add(w, box1, New(Box, 150.0, 150.0, 190.0, 190.0), rect1, END);
- draw(w);
- print(w);
-
- box2 = New(Box, 10.0, 10.0, 20.0, 20.0);
- offset(box2, 1.0, 4.0);
- add(w, box2, END);
- draw(w);
- print(w);
-
- /*
- * check the "cantDo", "CanYouDo" mechanism
- */
-
- gprintf(screen, "%s append\n", CanYouDo(w, appendGeneric) ? "I can do " : "I can't do ");
- gprintf(screen, "%s equal\n", CanYouDo(w, equalGeneric) ? "I can do " : "I can't do ");
- gprintf(screen, "%s softBind\n", CanYouDo(w, softBindGeneric) ? "I can do " : "I can't do ");
-
- /*
- * print the list of generics
- */
-
- gprintf(screen, "the generics ...\n\n");
- for (i = 0, gen = generics; gen != NULL; i++, gen = gen->gen_next)
- gprintf(screen, "%d: %s()\n", i, GenericName(gen));
-
- gprintf(screen, "all done\n");
- }
-
- InitTestClasses()
- {
- InitCoordClass();
- InitBoxClass();
- InitWindowClass();
- InitFillRRect();
- }
-